Allies Can Now Help Each In Combat
Big update this push, and it's one I've been excited about for a while: your character can now reach across the table and directly affect another player's character sheet.
What this actually means at the table
Up until now, when your Herald sang a healing verse at the party tank, you'd tell the tank "you healed for 12" and they'd type it into their sheet. Same story for buffs, granted feats, shared dice, all of it. The math was right, but the bookkeeping was on the players.
Not anymore. Now:
- Healing spells/feats pop straight onto your ally's HP bar
- Buffs show up as a glowing chip on their Status Panel, ready to be spent
- Granted feats (like the Apex Biomancer's Genetic Transference) appear in their feats list, usable until the next rest
- Shared dice and rerolls drop into their next roll's setup screen automatically
- Damage-split effects (like Dream-Tether) give the ally a "Split" button to take their share of the hit
The system handles the toast notifications, the math, and the "did this actually happen" verification. The other player just sees the effect appear on their sheet with a clean little label like "From: Kael".
Why this took some work
The tricky bit was that this had to be server-authoritative. We couldn't just have one player's app shouting "hey, I healed you" at another player's app and trusting it. Otherwise the first bug or browser hiccup turns into "wait, who healed who for how much?"
So under the hood there's now a small set of API endpoints that:
- Verifies you and your target are actually in the same Syndicate together
- Validates the effect shape (a heal is a heal, a buff is a buff)
- Writes it directly onto the target character
- Sends a clean toast to both players
It's the same trust model as the Fusion Circle system, just generalized to handle a lot more shapes of effect.
The big tagging pass
The other half of this commit is the unglamorous part: going through about 31 spells and 25 subclass feats and tagging them so they actually route through the new picker. Heralds, Monarchs, Neomachinists, Disavowed, Hextaru, Dreamwalkers, Balladiers, Aletheomancers, and a bunch more all got the treatment.
A handful of brand-new feats are wired up this push too:
- Power-Ups — broadcasts a pickup to the whole party, first to claim wins
- Coin Flip — pick Self or Ally, dice pre-rolled, token dropped on their side
- Cartomancy — each card routes to its own target
- Dream-Tether — when you take damage, your ally sees a "Split" button to take their share
- Genetic Transference — Apex Biomancer can temporarily grant an ally a feat
- Volatile Rounds — typed Blood Dice as an additive token
- Heretical Blessing, Swarm Protector — damage-type overrides and mitigation chips
One quality-of-life fix tucked in
While I was in there, I fixed a long-standing race condition where Laimul's Orison could heal you a fraction of a second after your max HP changed, leaving you with HP > maxHP for a hot second. There's now a render-time clamp that just won't let that happen, it's a system invariant now, not a hope.
What's next
This same engine is going to power a few more things down the road:
- Aura Feats and Spells
- Multi Target Feats and Spells
But the foundation is in. Allies can heal allies. Buffs land where they're aimed. The dice show up on the right sheet. The table runs a little smoother.
— X